package com.mindskip.xzs.viewmodel.admin.exam;
//这段代码定义了一个试卷标题项视图模型类ExamPaperTitleItemVM，用于在前端传递试卷标题内容和对应的题目列表到后端，以方便创建或编辑试卷。
//在前端，可以通过创建ExamPaperTitleItemVM对象，并设置标题内容和题目项列表，然后将该对象传递给后端接口，以便后端根据这些参数创建或编辑试卷。
// 在前端可以通过验证注解@NotBlank和@Size来确保标题内容不为空且题目列表至少有一个题目，并通过@Valid注解确保题目项列表中的每个对象都需要验证。
//在后端，接收到前端传递的ExamPaperTitleItemVM对象后，可以通过调用其getter方法获取标题内容和题目项列表，然后根据这些参数进行试卷的创建或编辑操作。
// 通过验证注解，可以在后端对传递的数据进行验证，确保数据的完整性和准确性。
import com.mindskip.xzs.viewmodel.admin.question.QuestionEditRequestVM;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.util.List;

// 试卷标题项视图模型类
public class ExamPaperTitleItemVM {

    @NotBlank(message = "标题内容不能为空") // 标题内容不能为空的验证注解
    private String name; // 标题内容

    @Size(min = 1, message = "请添加题目") // 至少需要一个题目的验证注解
    @Valid // 确保列表中每个对象都需要验证
    private List<QuestionEditRequestVM> questionItems; // 题目项列表

    // 获取标题内容
    public String getName() {
        return name;
    }

    // 设置标题内容
    public void setName(String name) {
        this.name = name;
    }

    // 获取题目项列表
    public List<QuestionEditRequestVM> getQuestionItems() {
        return questionItems;
    }

    // 设置题目项列表
    public void setQuestionItems(List<QuestionEditRequestVM> questionItems) {
        this.questionItems = questionItems;
    }
}
